Amazon Aurora ServerlessでManagement Consoleからクエリが実行可能になりました
大栗です。
re:Invent前の駆け込みアップデータが諸々発表されていますが、Auroraもたくさんアップデートが出ています。Aurora ServerlessでManagement Consoleからアクセスできるクエリエディタが使えるようになったのでレポートします。
- Now Run Amazon Aurora Serverless Queries Directly from the AWS Management Console (Beta)
- Using the Query Editor for Aurora Serverless
Aurora Serverlessのクエリエディタ
AuroraでSQLを発行するためにはMySQL系のDBクライアントでログインしてからSQLを発行するため、AWSのManagement Console以外のツールを操作してDBを管理する必要がありました。今回Aurora Serverless限定ながらManagement ConsoleからSQLを実行可能になりました。
Management ConsoleからSQLを実行できるクエリエディタは、Aurora ServerlessのData APIを使用しているため有効化が必要なのでご注意下さい。
注意
- クエリエディタは現在Beta版のため、変更される可能性があります。
- クエリエディタはData APIを有効にしたAurora Serverlessでのみ利用可能です。Data APIの有効化はこちらのエントリを御覧ください。
- 現在利用可能なリージョンは米国東部 (バージニア北部)のみです。
やってみる
事前設定
以下の状態を前提とします。
- リージョン: 米国東部 (バージニア北部)
- Auroraエンジン: Aurora Serverless 5.6.10a
- Aurora Serverlessのクラス名: serverless
まず、Aurora Serverlessを起動してData APIを有効化します。手順については以下のエントリを御覧ください。
Amazon Aurora ServerlessでHTTPSエンドポイントができ本当にサーバーレスアーキテクチャで利用可能になる!
次にManagement ConsoleでQuery Editor
というメニューが増えているのでクリックします。
以下の内容を入力してConnect to database
をクリックします。
項目 | 設定値 | 備考 |
---|---|---|
Database instance or cluster | serverless | クエリエディタを使用するAurora Serverlessを選択する |
Database username | Add new database credentials | まだユーザ名を登録していないため |
Enter database username | awsuser | ログインできるユーザ名を入力 |
Enter database password | mypassword | ログインできるパスワードを入力 |
Enter the name of the database or schema (optional) | <空欄> | データベースを指定しない |
クエリエディタが起動します。
なおData APIが無効の状態でConnect to database
をクリックすると以下のようにData APIを有効化するダイアログが表示されます。
クエリエディタでクエリを流してみます。まずデータベースを確認してみると以下のように一覧が表示されます。
データベースを選択していない状態でテーブル一覧を表示しようとするとエラーになり、以下のようにNo database selected (BadRequestException)
とメッセージが表示されます。
以下のSQLを流してテーブルを作成します。
create table mydb.sample_table ( col1 int, col2 varchar(20), col3 datetime);
以下のように結果が表示されます。
この様に複数の文も実行できます。
今までのクエリエディタの実行履歴も確認できます。Recent
タブをクリックしましょう。
クエリの保存も可能です。SQLを記述してSave
をクリックします。
説明を入力してSave
をクリックします。
Saved queries
タブをクリックすると、保存したクエリが表示されます。
さいごに
Redshiftでクエリエディタが使えるようになった時にRDSでも同じ様な機能がほしいと思っていたのですが実現してました。可能であればAurora Serverless以外のDBエンジンでも利用できるようになってほしいです。